﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using SistemaCenterQuimPost.Plantillas;

namespace SistemaCenterQuimPost.UI.PostSupervisor
{
    public partial class frmMenuSupervisor : SistemaCenterQuimPost.Plantillas.frmPlantillaPadre
    {
              
        public frmMenuSupervisor()
        {
            InitializeComponent();
        }


        private void frmMenuSupervisor_Load(object sender, EventArgs e)
        {

        }

        private void recepcionarProducotsToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (noEstaAbierto ("frmRecibirProductos"))
            {
            frmRecibirProductos unFrmRecibirProductos = new frmRecibirProductos(888, 702);
            unFrmRecibirProductos.MdiParent = this;
            unFrmRecibirProductos.Show();
            }else 
            {
                mandarAlFrenteFormulario ("frmRecibirProductos");
            }

        }

        private void auditarProductoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (noEstaAbierto("frmAuditarProductos"))
            {
                frmAuditarProductos unFrmAuditarProductos = new frmAuditarProductos();
                unFrmAuditarProductos.MdiParent = this;
                unFrmAuditarProductos.Show();
            }else
            {
                mandarAlFrenteFormulario("frmAuditarProductos");
            }
        }

        private void cierreToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (noEstaAbierto("frmCerrarCaja"))
            {
                frmCerrarCaja unFrmCerrarCaja = new frmCerrarCaja(888, 702);
                unFrmCerrarCaja.MdiParent = this;
                unFrmCerrarCaja.verificarCajaAbierta();
            }else
            {
                mandarAlFrenteFormulario("frmCerrarCaja");
            }
        }

        private void extracciónToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (noEstaAbierto("frmExtracciones"))
            {
                frmExtracciones unFrmExtracciones = new frmExtracciones(888, 702);
                unFrmExtracciones.MdiParent = this;
                unFrmExtracciones.verificarCaja();
            }else
            {
                mandarAlFrenteFormulario("frmExtracciones");
            }
        }

        private void ingresoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (noEstaAbierto("frmIngresoDinero"))
            {
                frmIngresoDinero unFrmIngresoDinero = new frmIngresoDinero(888, 702);
                unFrmIngresoDinero.MdiParent = this;
                unFrmIngresoDinero.verificarCajaAbierta();
            }else
            {
                mandarAlFrenteFormulario("frmIngresoDinero");
            }

        }

        private void estadoDeCajaToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (noEstaAbierto("frmEstadoCaja"))
            {
                frmEstadoCaja unFrmEstadoCaja = new frmEstadoCaja(888, 702);
                unFrmEstadoCaja.MdiParent = this;
                unFrmEstadoCaja.Show();
            }else
            {
                mandarAlFrenteFormulario("frmEstadoCaja");
            }
        }

        private void HabilitarDesactivarMenu(object sender, EventArgs e) //Captura evento MdiChilActive. Activa o desactiva el menu, según existan o no ventanas hijas activas.
        {
           /* if (this.ActiveMdiChild == null)
            {
                menuStripSupervisor.Enabled = true;
            }
            else
            {
                menuStripSupervisor.Enabled = false;
            }*/
        }

        private bool noEstaAbierto(string unFormulario)  //verifica que el formulario ya no esté abierto, si está abierto devuelve false, sino true;
        {
            bool noabierto = true;

            foreach (Form unHijo in this.MdiChildren)
            {
                if (unHijo.Name == unFormulario)
                {
                    noabierto = false;
                }
            }

            return noabierto;
        }

        private void mandarAlFrenteFormulario(string unFormulario) //envia al frente a un formulario secundario no activo.
        {
            foreach (Form unHijo in this.MdiChildren)
            {
                if (unHijo.Name == unFormulario)
                {
                    unHijo.BringToFront();
                    break;
                }
            }
        }

        private void salirToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Close();
                        
        }
                
        public void setTxtMenu() //establece el menu cuando un usuario ingresa.
        {
            this.Text = "Sistema CenterQuim Post - Sesión: " + this.getNombreUsuario() + " [Supervisor]";
        }
        
    }
}
